//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by FernFlower decompiler)
//

package ciicos.views.model.viewshmi;

import io.swagger.annotations.ApiModelProperty;
import java.util.ArrayList;
import java.util.List;

public class OrganizeAndViewsVO {
    @ApiModelProperty("主键")
    private String id;
    @ApiModelProperty("名称")
    private String fullName;
    @ApiModelProperty("是否有下级菜单")
    private Boolean hasChildren;
    @ApiModelProperty("下级菜单列表")
    private List<OrganizeAndViewsVO> children;

    public Boolean getHasChildren() {
        return this.hasChildren;
    }

    public void setHasChildren(Boolean hasChildren) {
        if (this.children == null) {
            hasChildren = false;
        } else if (this.children.size() == 0) {
            hasChildren = true;
        }

        this.hasChildren = hasChildren;
    }

    public List<OrganizeAndViewsVO> getChildren() {
        return this.children;
    }

    public void setChildren(List<OrganizeAndViewsVO> children) {
        if (children == null) {
            children = new ArrayList();
        } else if (children.size() == 0) {
            children = null;
        }

        this.children = children;
    }

    public String getId() {
        return this.id;
    }

    public String getFullName() {
        return this.fullName;
    }

    public void setId(String id) {
        this.id = id;
    }

    public void setFullName(String fullName) {
        this.fullName = fullName;
    }

    public boolean equals(Object o) {
        if (o == this) {
            return true;
        } else if (!(o instanceof OrganizeAndViewsVO)) {
            return false;
        } else {
            OrganizeAndViewsVO other = (OrganizeAndViewsVO)o;
            if (!other.canEqual(this)) {
                return false;
            } else {
                Object this$hasChildren = this.getHasChildren();
                Object other$hasChildren = other.getHasChildren();
                if (this$hasChildren == null) {
                    if (other$hasChildren != null) {
                        return false;
                    }
                } else if (!this$hasChildren.equals(other$hasChildren)) {
                    return false;
                }

                Object this$id = this.getId();
                Object other$id = other.getId();
                if (this$id == null) {
                    if (other$id != null) {
                        return false;
                    }
                } else if (!this$id.equals(other$id)) {
                    return false;
                }

                Object this$fullName = this.getFullName();
                Object other$fullName = other.getFullName();
                if (this$fullName == null) {
                    if (other$fullName != null) {
                        return false;
                    }
                } else if (!this$fullName.equals(other$fullName)) {
                    return false;
                }

                Object this$children = this.getChildren();
                Object other$children = other.getChildren();
                if (this$children == null) {
                    if (other$children != null) {
                        return false;
                    }
                } else if (!this$children.equals(other$children)) {
                    return false;
                }

                return true;
            }
        }
    }

    protected boolean canEqual(Object other) {
        return other instanceof OrganizeAndViewsVO;
    }

    public int hashCode() {
        int PRIME = 59;
        int result = 1;
        Object $hasChildren = this.getHasChildren();
        result = result * 59 + ($hasChildren == null ? 43 : $hasChildren.hashCode());
        Object $id = this.getId();
        result = result * 59 + ($id == null ? 43 : $id.hashCode());
        Object $fullName = this.getFullName();
        result = result * 59 + ($fullName == null ? 43 : $fullName.hashCode());
        Object $children = this.getChildren();
        result = result * 59 + ($children == null ? 43 : $children.hashCode());
        return result;
    }

    public String toString() {
        return "OrganizeAndViewsVO(id=" + this.getId() + ", fullName=" + this.getFullName() + ", hasChildren=" + this.getHasChildren() + ", children=" + this.getChildren() + ")";
    }
}
